import { get } from '../../http/axios'

export default {
    // 命名空间 ->让其他文件快速定位到
    namespaced: true,
    // 状态 ->data
    state: {
        dataList:{}
    },
    // 过滤器 ->处理state中的变量
    getters: {
        confirmed(state) {
            if (state.dataList.list) {
                var res = 0;
                state.dataList.list.forEach((item)=>{
                    console.log(item);
                    res += item.confirmed;
                });
                return res;
            }
        },
        suspected(state){
            if(state.dataList.list){
                var res = 0;
            state.dataList.list.forEach((item)=>{
                 console.log(item);
                 res += item.suspected;
            });
            return res;
            }
        },
        dead(state){
            if(state.dataList.list){
                var res = 0;
            state.dataList.list.forEach((item)=>{
                 console.log(item);
                 res += item.dead;
            });
            return res;
            }
        },
        cure(state){
            if(state.dataList.list){
                var res = 0;
            state.dataList.list.forEach((item)=>{
                 console.log(item);
                 res += item.cure;
            });
            return res;
            }
        },
        severe(state){
            if(state.dataList.list){
                var res = 0;
            state.dataList.list.forEach((item)=>{
                 console.log(item);
                 res += item.severe;
            });
            return res;
            }
        },
        outside(state){
            if(state.dataList.list){
                var res = 0;
            state.dataList.list.forEach((item)=>{
                 console.log(item);
                 res += item.outside;
            });
            return res;
            }
        },
    },
    // 突变 ->改变state中变量值的唯一方式
    mutations: {
        set_dataList(state, dataList) {
            state.dataList = dataList;
        }
    },
    // 动作->发送请求（等价于methods）
    actions: {
        async page_query(context, params) {
            let res = await get('/epidemic/pageQuery', params);
            // 调用突变中的方法，提交突变
            context.commit('set_dataList', res.data)
        }
    }
}